Some search engine portals, in addition to listing of search results, provide users with terms related to the user's query called “Also-try” suggestions or suggestions. A suggestion is one or more ways of rewriting a query, and is also referred to herein as a query rewrite suggestion. For example, if a user were to submit a query “chicken” the search engine portal may return a suggestion that includes queries such as “chicken nuggets”, “chicken soup recipes”, “chicken recipes” etc. The suggestion let users conveniently refine their queries to get closer to the true intent of the original query. The suggestions are links which initiate a new search with the terms listed in the suggestion. A similar technology generates phrases that link to advertisements relevant to the user's query.
Suggestions are generated by query rewrite providers (QRPs) that generate suggestions using a particular approach or technique. There are a number of approaches QRPs use to generate a list of candidate suggestions. Some of the approaches are: UNITS, GOSSIP, SUBMARINE, Spell Checking, Stemming, MODS substitutions, Prisma, and Deletion Prediction. UNITS QRP generates suggestions based on the frequency analysis of separate elements making up the query. Element frequencies are extracted from query logs. GOSSIP technology is also based on information extracted from query logs; specifically query logs are analyzed for the query terms which were typed as a follow-up to the original query in an attempt to narrow or change the scope of the original query. MODS QRP is tuned to provide related advertisements. A SUBMARINE QRP predicts which term in a query can be deleted without altering the query's meaning. For example a SUBMARINE QRP would change “the show” to “show” while a query for the band “The Who” would remain unaltered. A spell checking QRP spell checks queries, for example “thaeter” would be changed to “theater”. Prisma technology derives candidate suggestions from related sets of documents related to the query and may result in suggestions that do not resemble the original query. A stemming QRP changes queries, an example of stemming is “shows” changed to “show.” Every QRP that alters the original query may actually disturb the original meaning so there is a confidence interval associated with every alteration.
Because individual characteristics or features such as length, dominant parts of speech, presence of geographical terms, digits, or stop words etc. differ between search queries, different rewrite techniques are effective for particular query types. For example, it is helpful to apply deletions to long queries such as “cheap car insurance”, but not to one-word queries such as “nintendo”, where either substitute terms or expansions are preferred. Therefore, no single QRP can successfully generate suggestions for all query types.
Individual QRPs generate a list of suggestion and rank each suggestion based on probability the suggestion will be deemed relevant by the user. QRPs rank suggestions using a scoring function. The scoring function is specific to each QRP, and therefore scores cannot be directly compared between different QRPs. Moreover some QRPs do not export the scores. For example Prisma technology does not provide any score for suggestions.
There is a clear need to create a query rewrite provider which effectively generates suggestions for different query types.
The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section.